package com.bawei.lib_net.test_rertrofit

import androidx.lifecycle.LiveData
import io.reactivex.Observable
import retrofit2.Call
import retrofit2.http.GET
import retrofit2.http.Query


/**
 * @author yaotianxue
 * @description
 * @date 2025/5/23
 */
interface Api {
    //原生
    @GET("")
    fun get(@Query("pageSize") pageSize:Int):Call<String>
    //（1）mvp项目中结合Rxjava完成线程切换：RxJava2CallAdapterFactory()：依赖里有的，不需要自己封装
    @GET("")
    fun get2(@Query("pageSize") pageSize:Int): Observable<String>
    //(2)mvvm项目中结合LiveData，自己封装LiveDataCallAdapterFactory()：将Call转成LiveData
    @GET("")
    fun get3(@Query("pageSize") pageSize:Int): LiveData<String>
    //（3）kotlin项目：mvvm/mvi项目结合协程和Flow流完成网络请求:suspend函数
    @GET("")
    suspend fun get4(@Query("pageSize") pageSize:Int):String





}